﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using GA.Server.Api;
using GA.Server.Configuration;
using GA.Shared.Interfaces;
using GA.Server.Objects;

namespace GA.Server.Managers
{
    public class PermissionManagerServer : GAServer, IObjectServer
    {
        public PermissionManagerServer() { }

        public PermissionManagerServer(ServerPropertiesElementCollection properties)
            : base(properties)
        {
            if (properties == null) throw new ArgumentNullException("properties");

            mPermissionTypes = new Dictionary<int, DatabasePermissionType>();
            mPermissions = new Dictionary<int, DatabasePermission>();
        }

        private Dictionary<int, DatabasePermissionType> mPermissionTypes;
        private Dictionary<int, DatabasePermission> mPermissions;

        #region IObjectServer Members

        public SerializableTransferObject CreateObject(SerializableTransferObject authorizedUser, SerializableTransferObject newObject)
        {
            #warning Not Implemented
            throw new NotImplementedException();
        }

        public void EditObject(SerializableTransferObject authorizedUser, SerializableTransferObject editObject)
        {
            #warning Not Implemented
        }

        public void DeleteObject(SerializableTransferObject authorizedUser, SerializableTransferObject deleteObject)
        {
            #warning Not Implemented
        }

        public SerializableTransferObject GetObject(SerializableTransferObject authorizedUser, string type, Dictionary<string, object> parameters)
        {
            #warning Not Implemented
            throw new NotImplementedException();
        }

        public IEnumerable<SerializableTransferObject> GetObjects(SerializableTransferObject authorizedUser, string type, Dictionary<string, object> parameters)
        {
            #warning Not Implemented
            throw new NotImplementedException();
        }

        #endregion
    }
}
